.\" -*- nroff -*-
.TH FILEFRAG 8 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@"
.SH NAME
filefrag \- report on file fragmentation
.SH SYNOPSIS
.B filefrag
[
.BI \-b blocksize
]
[
.B \-BeEkPsvVxX
]
[
.I files...
]
.SH DESCRIPTION
.B filefrag
reports on how badly fragmented a particular file might be.  It makes
allowances for indirect blocks for ext2 and ext3 file systems, but can be
used on files for any file system.
.PP
The
.B filefrag
program initially attempts to get the
extent information using FIEMAP ioctl which is more efficient and faster.
If FIEMAP is not supported then filefrag will fall back to using FIBMAP.
.SH OPTIONS
.TP
.B \-B
Force the use of the older FIBMAP ioctl instead of the FIEMAP ioctl for
testing purposes.
.TP
.BI \-b blocksize
Use
.I blocksize
in bytes, or with [KMG] suffix, up to 1GB for output instead of the
file system blocksize.  For compatibility with earlier versions of
.BR filefrag ,
if
.I blocksize
is unspecified it defaults to 1024 bytes.  Since
.I blocksize
is an optional argument, it must be added without any space after
.BR -b .
.TP
.B \-e
Print output in extent format, even for block-mapped files.
.TP
.B \-E
Display the contents of ext4's extent status cache.  This feature is not
supported on all kernels, and is only supported on ext4 file systems.
.TP
.B \-k
Use 1024\-byte blocksize for output (identical to '\-b1024').
.TP
.B -P
Pre-load the ext4 extent status cache for the file.  This is not
supported on all kernels, and is only supported on ext4 file systems.
.TP
.B \-s
Sync the file before requesting the mapping.
.TP
.B \-v
Be verbose when checking for file fragmentation.
.TP
.B \-V
Print version number of program and library.  If given twice, also
print the FIEMAP flags that are understood by the current version.
.TP
.B \-x
Display mapping of extended attributes.
.TP
.B \-X
Display extent block numbers in hexadecimal format.
.SH AUTHOR
.B filefrag
was written by Theodore Ts'o <tytso@mit.edu>.
